
;	     FILE = ADVDATA1.ASM  LAST MODIFIED: 12/15/87

R$PNTS	 EQU   1		  ;SET TO 1 TO ENABLE TREASURE POINTS
MAXOBJ0  EQU   6		  ;MAX OBJECTS ALLOWED TO CARRY
NORMS0	 EQU   53		  ;NUMBER OF ROOMS IN ADVENTURE
TRESRM0  EQU   22		  ;ROOM TO STORE TREASURE IN
MAXPNT0  EQU   100		  ;TOTAL POINTS REQUIRED TO WIN
DEADRM0  EQU   1		  ;DEFAULT ROOM TO DIE IN
ADVNUM0  EQU   06		  ;ADVENTURE NUMBER FOR SAVE GAME

ABS0	 SEGMENT AT 0000H

	 ORG   0070H
TIMER_INT DD   ?		  ;TIMER TICK INTERRUPT VECTOR

	 ORG   0410H
EQUIP_FLAG DW  ?		  ;EQUIPMENT INSTALLED FLAG

	 ORG   046CH
TIMER_LOW1 DB  ?
TIMER_LOW2 DB  ?		  ;LOW ORDER BYTE OF TIMER_LOW

ABS0	 ENDS

VIDEO	 SEGMENT AT 0B800H

	 ORG   0
GSCRN1@W LABEL WORD
GSCRN1	 DB    92/2*80 DUP(?)	  ;EVEN SCAN LINES GRAPHIC SCREEN
TSCRN1@W LABEL WORD
TSCRN1	 DB    108/2*80 DUP(?)	  ;EVEN SCAN LINES TEXT SCREEN
	 ORG   2000H
GSCRN2@W LABEL WORD
GSCRN2	 DB    92/2*80 DUP(?)	  ;ODD SCAN LINES GRAPHIC SCREEN
TSCRN2@W LABEL WORD
TSCRN2	 DB    108/2*80 DUP(?)	  ;ODD SCAN LINES TEXT SCREEN

VIDEO	 ENDS

STKSEG	 SEGMENT STACK
	 DW    256 DUP(0)
STKTOP	 EQU   $
STKSEG	 ENDS

DATA	 SEGMENT PUBLIC

	 EXTRN	 PROTSW:BYTE, VALIDSW:BYTE

	 PUBLIC  COLOR1,      COLOR2,	   ANTTAB,	ROWCOL
	 PUBLIC  ROW,	      COL,	   MOVOBJ,	ROOM
	 PUBLIC  ANTIMSW,     SCROBJ,	   SCRPOS,	LINELEN
	 PUBLIC  ADVNUM,      CURCHR,	   KEYBUF,	TXTTAB
	 PUBLIC  MSGLNS,      GPC_TAB,	   MODE,	COUNT
	 PUBLIC  CUR_BYT1,    CUR_BYT2,    CUR_BYTE@W,	REFRCT
	 PUBLIC  NLNSCT,      MSGMOR,	   LIT160,	RANDOM
	 PUBLIC  TIMER_LOW1,  TIMER_LOW2,  RMTB_LEN,	SCROB2
	 PUBLIC  EIGHTY,      GAMSAV,	   STARTVAR,	SAVNO
	 PUBLIC  RECSIZ,      CURR_REC,    SAVEKEY1,	SAVEKEY2

	 PUBLIC  RMOBT1,      RMOBT2,	   PUTTAB,	PNTTAB
	 PUBLIC  POINTS,      OBJECT,	   OBJCNT,	EQUTAB
	 PUBLIC  NOUNNO,      VERBNO,	   SCRIND,	VERB
	 PUBLIC  NOUN,	      MOVOBJ,	   VERBTB,	NOUNTB
	 PUBLIC  ASCSAV,      TENTBL,	   SCRTAB,	ROOMTB
	 PUBLIC  MAXOBJ1,     NORMS1,	   TRESRM1

;	 GENERAL ADVENTURE KERNEL VARIABLES

STARTVAR EQU   $

SAVEKEY1 DB    0		  ;ADVENTURE SAVE FILE MARKER
SAVEKEY2 DB    0		  ;ADVENTURE SAVE FILE ADV NUMBER
ROOM	 DB    0
RANDOM	 DB    ?
NEWRM	 DB    ?
VERB_NOUN LABEL WORD
NOUNNO	 DB    ?
VERBNO	 DB    ?
VERB	 DB    MAXWRD DUP(?)
NOUN	 DB    MAXWRD DUP(?)
MSGLNS	 DB    ?
ANTIMSW  DB    0		  ;IF ZERO NO ANTIMATION ROUTINE
ROWCOL	 LABEL WORD
ROW	 DB    ?
COL	 DB    ?
COLOR1	 DB    ?
COLOR2	 DB    ?
FLIPSW	 DB    ?
FLIPCT	 DW    ?
FLP2SW	 DB    ?
FLP2CT	 DW    ?
LITESW	 DB    ?
LITECT	 DB    ?
RMMOVE	 DB    ?
POINTS	 DB    ?
SCORE	 DW    ?
OBJCNT	 DB    ?
OBJECT	 DB    MAXOBJ0 DUP(?)

;	 ADVENTURE UNIQUE VARIABLES
SLOTSW	 DB    ?	;TIME MACHINE SLOT
DIALSW	 DB    ?	;SAFE DIAL
NOTEPG	 DB    ?	;NOTEBOOK PAGE
BATTSW	 DB    ?	;CHARGED BATTERY SWITCH
RADISW	 DB    ?	;RADIATION SWTICH
WAXSW	 DB    ?	;HARD/MELTED WAX SWITCH

ENDVAR	 EQU   $

;	 ADVENTURE CONSTANTS

ADVNUM	 DB    ADVNUM0
MAXOBJ1  DB    MAXOBJ0
NORMS1	 DB    NORMS0
TRESRM1  DB    TRESRM0
MAXPNT1  DB    MAXPNT0
DEADRM1  DB    DEADRM0
EIGHTY	 DB    80
LIT160	 DB    160
TENTBL	 DW    10000,1000,100,10,1,0

ASCSAV	 DW    0
MSGMOR	 DB    '- (MORE) - ',0
VERSN	 DB    ' V1.2',0
MDPCRE	 DB    ' Mar','k'+SPC,'Dat','a'+SPC
	 DB    'Products',13,13
	 DB    7 DUP(' '+SPC)
	 DB    'presents',0
CREDIT	 DB    9 DUP(' '+SPC)
	 DB    'By:',13,13
	 DB    2 DUP(' '+SPC)
	 DB    ' Bo','b'+SPC,'Wither','s'+SPC,C$AND
	 DB    'Stephe','n'+SPC,'O',27H,'Dea',13,13,13
	 DB    5 DUP(' '+SPC)
	 DB    'Copyrigh','t'+SPC,'(c',')'+SPC,'1985',13
	 DB    2 DUP(' '+SPC)
	 DB    ' Bo','b'+SPC,'Wither','s'+SPC,C$AND
	 DB    'Stephe','n'+SPC,'O',QUOTE,'Dea',13
	 DB    5 DUP(' '+SPC)
	 DB    'Al','l'+SPC,'Right','s'+SPC,'Reserved',0
ENDMSG	 DB    13,'Inser','t'+SPC,'a'+SPC,'DO','S'+SPC
	 DB    'diskett','e'+SPC,'i','n'+SPC,'driv','e'+SPC
	 DB    'A'+SPC,C$AND,'pres','s'+SPC,'CTRL-ALT-DEL.',0

MON_MSG  DB    13,13
	 DB    'Pleas','e'+SPC
	 DB    'selec','t'+SPC,C$THE
	 DB    'typ','e'+SPC,C$OF
	 DB    'monito','r'+SPC
	 DB    'yo','u'+SPC,C$ARE
	 DB    'using:',13,13
	 DB    ' '+SPC
	 DB    '1','.'+SPC,'RG','B'+SPC,'monitor',13
	 DB    ' '+SPC
	 DB    '2','.'+SPC,'B&','W'+SPC,'Composit','e'+SPC,'monitor',13
	 DB    ' '+SPC
	 DB    '3','.'+SPC,'Colo','r'+SPC,'Composit','e'+SPC,'monitor',13
	 DB    0

;
;	 DATA USED BY DISPLAY OVERLAY ROUTINES
;
CUR_BYTE@W LABEL WORD
CUR_BYT1 DB    ?
CUR_BYT2 DB    ?
MODE	 DB    ?
REFRCT	 DB    ?
NLNSCT	 DB    ?
COUNT	 DB    ?
LINELEN  DB    ?
SCRPOS	 DW    ?
CURCHR	 DB    BLUE@B

;	 KEYBOARD BUFFER STORAGE

KEYBUF	 DB    MAXLINE+1 DUP(?)

;	 GRAPHIC PIXEL CONVERSION TABLE

GPC_TAB  DW    256 DUP(?)

GAMSAV	 DB    1		  ;DISK DRIVE A
	 DB    'VORTEX  '         ;FILENAME
	 DB    'SV'               ;EXT
SAVNO	 DB    '0'                ;SAVE GAME NUMBER
	 DW    0		  ;CURRENT BLOCK
RECSIZ	 DW    128		  ;RECORD SIZE
	 DW    0,0		  ;FILE SIZE
	 DW    0		  ;DATE OF LAST WRITE
	 DW    0		  ;TIME OF LAST WRITE
	 DW    0,0,0,0		  ;RESERVED FOR MS-DOS
CURR_REC DB    0		  ;CURRENT RECORD
	 DW    0,0		  ;RELATIVE RECORD

;
;	 FILE: ADVDATA1.ASM
;
